1. Field of the Invention
The present invention relates to a print control system and a method, and more particularly to a technology for setting up the internal state of a PDL (Page Description Language) processor used in the print control system. The PDL processor is a processor which processes print data coded in a specific PDL for generating the page image of each page.
2. Description of the Related Art
In a network print system, a page description language (PDL) such as PostScript (trademark of Adobe Systems Incorporated, U.S.) is used to format print data sent from a client unit, usually a computer, to a print server. In such a print system, a document edited by a document editing application on the client unit is converted to PDL-format print data by a print driver contained in the client unit for transmission to the print server. The print server interprets the PDL-coded document, generates a page image of each page in bit map memory, and sends each page image to a printer for printing on paper.
The print server interprets PDL-coded print data through a module called a PDL interpreter and generates page image data. The PDL interpreter holds and manages various types of image generation data (such as graphic status) or print specification data (such as attributes) as its internal state data, and changes the internal state data according to the interpretation result of received print data. The PDL interpreter, in turn, generates page image data according to the internal state data. The PDL interpreter is designed to interpret only a specific PDL. Specifying or changing the internal state data of the PDL interpreter requires a user to code data in the PDL and to enter coded data (PDL data) into the PDL interpreter.
Conventionally, a PDL has been used as a transfer format of a document sent from a client unit to the print server. PDL-formatted print data, once printed, is usually discarded. Recently, however, printed PDL-formatted print data is saved in a file for later processing and printing.
When a PDL file is re-used, a print specification different from the previous specification is sometimes desired. For example, the user wants to change the font or the print attributes such as paper size or single/double sided printing.
Recently, the International Organizations for Standardization (ISO) defined a document printing application protocol called DPA (Document Printing Application: ISO/IEC10175). Some printer drivers create print specification data according to the DPA. On a client unit on which such a printer driver is used, a DPA-coded print specification, which specifies changes to an existing PDL file, may be added to a PDL file for transmission to the print server.
A print specification may include data on the internal state of the PDL interpreter. As described above, the internal state of the PDL interpreter can only be changed internally by having the PDL interpreter interpret PDL-coded data, and can not be changed externally according to DPA data.
This applies not only to the DPA, but to data which cannot be interpreted by the PDL interpreter. To change the internal state of the PDL interpreter, only the corresponding PDL must be used.
Thus, a conventional print server can not set or change the internal state of its PDL interpreter when internal state specification data which is not described in the PDL associated with that print server is input.
The present invention seeks to solve the problems associated with the problem described above. It is an object of the present invention to provide a system and a method which allow a print control system with a PDL processing module, such as a PDL interpreter, to process internal state specification data described in a format which the PDL processing module cannot interpret, and which sets up the internal state of the PDL processing module according to the data.
To achieve the above object, one aspect of the present invention is a print control system which comprises a PDL processing module which processes print data described in a predetermined PDL (page description language) to change it own internal state; a control module which extracts state specification data from job data entered from a client unit, the state specification data specifying the internal state of the PDL processing module and being described in a specific data format other than the predetermined PDL format; and a conversion module which converts the state specification data, extracted by the control module, to be expressed in the predetermined PDL for transmission to the PDL processing module, wherein the PDL processing module processes the conversion result of the state specification data received from the conversion module to specify its own internal state.
In this configuration, the control module extracts state specification data, specifying the internal state of the PDL processing module, from job data received from the client unit. The conversion module converts the state specification data to description expressed in the predetermined page description language (PDL). The conversion module then sends conversion result to the PDL processing module. The PDL processing module processes the state specification data, which has been converted to PDL, to reflect it on its own internal state.
This configuration allows a user of the client unit to use non-PDL (such as DPA) state specification data to specify the internal state of the PDL processing module.
In the above configuration, a user of the client unit can send PDL print data containing non-PDL state specification data to set up the internal state of the PDL processing module. The non-PDL state specification data sets up the internal state of the PDL processing module and, after that, the PDL processing module processes the print data. This configuration allows the user to send existing PDL print data as well as a print specification, coded in a format other than the PDL, to specify the print specification for the print data.
In this configuration, a description nullifying an internal state description contained in the print data may be included into the conversion result of the state specification data.
That is, the conversion module not only converts state specification data to be expressed in predetermined PDL, but also adds a PDL description nullifying an internal state description contained in the print data. This configuration is useful when the internal state specification contained in the original print data does not match the new state specification data. In other words, the conversion module nullifies the internal state specification in the original print data, thus preventing a conflict.
Another aspect of the present invention is a print control system which comprises a PDL processing module which processes print data described in a predetermined page description language to change its own internal state; input means for receiving from a user an instruction on the internal state of the PDL processing module; and a conversion module which converts the instruction on the internal state, received from the input means, to be expressed in the predetermined page description language and which sends conversion result to the PDL processing module, wherein the PDL processing module processes the conversion result received from the conversion module to specify the internal state.
In this configuration, a user-entered instruction on the internal state of the PDL processing module is converted by the conversion module to a PDL description. The PDL processing module interprets this PDL description to reflect the contents of the instruction on its own internal state.
Another aspect of the present invention is a method of controlling a print control system comprises steps of first extracting state specification data from job data entered from a client unit, the state specification data specifying a internal state of a PDL processing module and being described in a specific data format other than the specific PDL format which the PDL processing module can process; next converting the state specification data, extracted from the job data, to be expressed in the predetermined page description language; and then specifying the internal state of the PDL processing module by causing the PDL processing module to process the conversion result obtained from the converting step.
In this method, when job data entered from the client unit contains both state specification data and print data coded in the predetermined page description language, the PDL processing module may process the conversion result obtained in the conversion step and, after that, PDL processing module may process the print data.
A computer-readable medium according to the present invention has stored thereon a program which causes a computer system to perform the steps of extracting state specification data from job data entered from a client unit, the state specification data being described in a specific data format other than a predetermined PDL format; converting the extracted state specification data to be expressed in the predetermined PDL; and sending conversion result obtained by converting the state specification data to the page description language processing module.
The computer system described above includes various units capable of running programs, such as a printer having a print function, print server controlling such a printer, and print control system. The computer-readable medium on which a program is stored includes any data recording medium capable of storing programs in the computer-readable format, such as a floppy disk, CD-ROM (compact disks read-only memory) disc, a hard disk, or ROM. The program stored on this recording medium is loaded into computer memory for execution by the CPU (central processing unit). A preferred embodiment of the present invention also includes a configuration in which the program is installed onto a computer-connected fixed disk, or loaded into main memory, over a network.